//
//  EPEnvironment.h
//  ORM
//
//  Created by PH on 4.2.10.
//  Copyright 2010 Codesign. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "EXObjectStore.h"

@class EPTransaction;

@interface EPEnvironment : NSObject {
	EXObjectStore* objectStore;
	NSMutableDictionary* objectsByPointer;
	EPTransaction* transaction;
}

@property (nonatomic, retain) EPTransaction* transaction;

- (id)initWithPath:(NSString*)path;
- (EPTransaction*)beginTransaction;
- (NSException*)performTransaction:(void(^)())block;
- (id)containerObject;
- (id)emptyManagedObjectOfClass:(Class)cls;
- (void)releaseObject:(id)object;

@end
